package elementos;

import interfacesFerrovia.DefsGlobais.TipoAtributo;
import malhaFerroviaria.Ferrovia;

public class Composicao{

	private String id;
	private Integer comprimento;
	private Float velocidade_maxima;	
	private Float aceleracao_maxima;
	private Float frenagem_maxima;
	private String[] itinerario;
	private String id_tr_ch_atual;
	private Float posicao_atual;
	private Float velocidade_atual;
	private Boolean sentido_atual;
	private Float acel_atual;
	private Float fren_atual;
//	private Float partida;
	private Boolean emMovimento;

	public Composicao(String id, Ferrovia f) {
		this.id = id;
		this.comprimento =  (Integer)f.consultaAtributo(id, TipoAtributo.COMPRIMENTO);
		this.velocidade_maxima = (Float)f.consultaAtributo(id, TipoAtributo.VELOCIDADE_MAX);
		this.aceleracao_maxima = (Float)f.consultaAtributo(id, TipoAtributo.ACELERACAO_MAX);
		this.frenagem_maxima = (Float)f.consultaAtributo(id, TipoAtributo.FRENAGEM_MAX);
		this.itinerario = (String[])f.consultaAtributo(id, TipoAtributo.ITINERARIO);
		this.id_tr_ch_atual = (String)f.consultaAtributo(id, TipoAtributo.ID_TR_CH_ATUAL);
		this.posicao_atual = (Float)f.consultaAtributo(id, TipoAtributo.POSICAO_ATUAL);
		this.velocidade_atual = (Float)f.consultaAtributo(id, TipoAtributo.VEL_ATUAL);
		this.sentido_atual = (Boolean)f.consultaAtributo(id, TipoAtributo.SENTIDO_ATUAL);
		this.acel_atual = (Float)f.consultaAtributo(id, TipoAtributo.ACEL_ATUAL);
		this.fren_atual = (Float)f.consultaAtributo(id, TipoAtributo.FREN_ATUAL);
		this.emMovimento = (Boolean)f.consultaAtributo(id, TipoAtributo.EM_MOVIMENTO);
	}
	
	public String getId() {
		return this.id;
	}
	
	public void setId(String id) {
		this.id = id;
	}

	public Integer getComprimento() {
		return comprimento;
	}

	public void setComprimento(Integer comprimento) {
		this.comprimento = comprimento;
	}

	public Float getVelocidade_maxima() {
		return velocidade_maxima;
	}

	public void setVelocidade_maxima(Float velocidadeMaxima) {
		velocidade_maxima = velocidadeMaxima;
	}

	public Float getAceleracao_maxima() {
		return aceleracao_maxima;
	}

	public void setAceleracao_maxima(Float aceleracaoMaxima) {
		aceleracao_maxima = aceleracaoMaxima;
	}

	public Float getFrenagem_maxima() {
		return frenagem_maxima;
	}

	public void setFrenagem_maxima(Float frenagemMaxima) {
		frenagem_maxima = frenagemMaxima;
	}

	public String[] getItinerario() {
		return itinerario;
	}

	public void setItinerario(String[] itinerario) {
		this.itinerario = itinerario;
	}

	public String getId_tr_ch_atual() {
		return id_tr_ch_atual;
	}

	public void setId_tr_ch_atual(String idTrChAtual) {
		id_tr_ch_atual = idTrChAtual;
	}

	public Float getPosicao_atual() {
		return posicao_atual;
	}

	public void setPosicao_atual(Float posicaoAtual) {
		posicao_atual = posicaoAtual;
	}

	public Float getVelocidade_atual() {
		return velocidade_atual;
	}

	public void setVelocidade_atual(Float velocidadeAtual) {
		velocidade_atual = velocidadeAtual;
	}

	public Boolean getSentido_atual() {
		return sentido_atual;
	}

	public void setSentido_atual(Boolean sentidoAtual) {
		sentido_atual = sentidoAtual;
	}

	public Float getAcel_atual() {
		return acel_atual;
	}

	public void setAcel_atual(Float acelAtual) {
		acel_atual = acelAtual;
	}

	public Float getFren_atual() {
		return fren_atual;
	}

	public void setFren_atual(Float frenAtual) {
		fren_atual = frenAtual;
	}



//	public int getPartida() {
//		return partida;
//	}



//	public void setPartida(int partida) {
//		this.partida = partida;
//	}



	public Boolean getEmMovimento() {
		return emMovimento;
	}



	public void setEmMovimento(Boolean emMovimento) {
		this.emMovimento = emMovimento;
	}
	
	
}
